package com.ruoyi.bom.service;


import com.ruoyi.bom.domain.FoodAndBom;
import com.ruoyi.bom.domain.TqlFood;
import com.ruoyi.bom.domain.TqlFoodUnit;
import com.ruoyi.bom.domain.TqlPandianPeriodVO;
import com.ruoyi.bom.dto.BillFoodPeriodDto;
import com.ruoyi.bom.dto.DeptProlossAndMarginDto;

import java.util.List;
import java.util.Map;

/**
* @author 86198
* @description 针对表【tql_food】的数据库操作Service
* @createDate 2024-01-18 18:19:03
*/
public interface TqlFoodService {

    List<TqlFood> selectFoodList(TqlFood tqlFood);

    List<TqlFood> selectFoodVoList(TqlFood tqlFood);

    List<TqlFood> selectShopAndPriceList(TqlFood tqlFood);

    List<TqlFood> findAllFood(Map<String, String> params);
    List<TqlFood> findAllFood(TqlFood params);
    List<TqlFoodUnit> findFoodUnit(Long foodId);

    List<TqlFood> findUnUserFoodInfo(String fnumber);

    TqlPandianPeriodVO findEnableGenPharse(String pandianCode);

    FoodAndBom findUnUserFoodCountAndSumAmount(FoodAndBom food, TqlPandianPeriodVO period, int month);

    int insertBomAnalsysByUnusedBom(List<FoodAndBom> list1);

    List<FoodAndBom>  queryBomAnalsys(FoodAndBom pandianCode);

    List<BillFoodPeriodDto> findBillFoodPeriod(String pandianCode,  String[] foodCodes);

    List<FoodAndBom> findTqlHllShopBillFoodReportByPeriod(TqlPandianPeriodVO period, int month);

    List<FoodAndBom> findBomCardParse(String pandianCode, String type);

    List<DeptProlossAndMarginDto> findDeptProloss(String pandianCode, String shopCode);

    String getLastPandianCode(String pandianCode);

    List<DeptProlossAndMarginDto> findRealCost(String pandianCode, String[] deptCodes);

    int insertDeptProlossAndMargin(List<DeptProlossAndMarginDto> list);

    List<DeptProlossAndMarginDto> findDeptProlossAndMargin(String pandianCode);

    int delDeptProlossAndMargin(String pandianCode);

    void setIsOpen(Integer id);
}
